User Prioritization in a Congested Network

ABSTRACT

A behavior investigating device of a system investigating arrangement in a communication network continuously obtains statistical network usage data of users, analyzes the statistical network usage data with regard to the pattern of behavior of the users, prioritizes the users based on the analysis and informs a traffic prioritizing function about the priority of at least one of the users. The traffic prioritizing function, which may be provided in the traffic prioritizing node, determines that there is network congestion, identifies a communication session of a user in the communication network, obtains a priority of the user from a behavior investigating device and determine whether the user is to be allowed to use the communication network based on the priority and the congestion determination.

TECHNICAL FIELD

The invention relates to communication networks. More particularly, theinvention relates to a method for investigating the behavior of users ina communication network and a system investigating arrangement in such acommunication network as well as to a method for prioritizing traffic ina communication network and a traffic prioritizing node.

BACKGROUND

Communication networks, such as mobile communication networks haveincreased in popularity for using a wide variety of services. Thesenetworks are then often operated by an operator and include a number ofnodes cooperating for rendering the services to users of the network.

Some nodes in a mobile communication network that are involved in suchservice rendering are Online Charging System (OCS) node, Policy ControlRule Function (PCRF) node and Gateway GPRS Support Node (GGSN), whereGPRS is an acronym for General Packet Radio Service. A GGSN node mayhere also comprise a Policy and Charging Enforcement Function (PCEF).Another node that may exist in the system is a Mobile Switching Centre(MSC).

The nodes PCRF, GGSN (including PCEF) and OCS are mainly responsible forrendering and charging end user data services. When a user of thecommunication network tries to access the Internet or another dataservice as provided by the operator, GGSN establishes one policy and onecharging session with PCRF and OCS, respectively. PCEF in-turn gets therequired information of the user from OCS. Similar functions exist fortraditional voice services, where an MSC interacts with OCS forreservations and charging of accounts based on service usage.

OCS allows a telecommunication service provider to charge its customersin real time based on service usage. The functions within the OCSinclude both event and session based charging for various services likevoice, data etc. The OCS receives traffic from different core networkelements (like PCRF, GGSN, MSC etc.) to charge for the service usage atreal-time.

In operator networks though, the network capacity is rightly dimensionedin most cases, so the capacity will not be surplus in general. Thenetwork capacity is generally dimensioned by estimating peak traffic(during peak hours) generated by network users during a normal day(excluding festive days). However provisioning (and de-provisioning) ofnew users into a network is a daily routine (especially in emergingmarkets where subscriber acquisition is still a big thing) and ingeneral network elements are not expanded that often. Hence, it ispossible that during peak hours some of the network elements involved inthe chain of service-rendering may enter into overload situations,causing rejection of traffic.

Requests for communication in the case of congestion in a networkelement can be denied by many of these nodes, for instance by OSC, PCRFand GGSN. Furthermore, the users of the network may not be equal. Somemay be more important than others for a variety of reasons. In the caseof congestion, there is today no way to differentiate between differentusers based on importance.

OCS does for instance handle traffic based only on the rate plans orproducts associated to a user. There is thus no consideration of howimportant the user may be in the network. There is no prioritizationbeing made with respect to the user.

Today OCS has no intelligence to take into account a user-priority whenmaking a decision. Especially during congestion, general loadregulation/congestion control mechanisms cater for rejecting apercentage of traffic or a particular type of traffic till load comesdown to a decent level. There could therefore be transactions/sessionsrelated to users deemed to be important that will be rejected duringthis period.

Hence, during traffic congestion, there always exists a possibility thata low-value user is served over a highly valued user.

A first type of highly valued user may be a user that is economicallyimportant to the operator. It may be a user that has a high usage rateand/or a high billing rate. It may also be a user that is loyal or isinfluential, where an influential user may have a high number offollowers in social networks. A second type of highly valued user may bea user involved in important work in society, such as a doctor, anambulance driver or a fireman.

If a highly valued user of the first type gets rejected, this user mayhave a negative user experience, which may lead to decreased loyalty anda high churn rate in the network causing a loss in revenue for theservice provider. A highly valued user of the second type may alsochurn; however, this user may also be unable to communicate vitalinformation at a time when this is important. This may in turn bedangerous, depending on the situation that the user is involved in.

Therefore, there is a need for allowing prioritization between users ina communication network, where one or more network elements areexperiencing congestion.

SUMMARY

One object of the invention is to provide a user priority that can beused for prioritizing traffic in a communication network when there iscongestion.

This object is, according to a first aspect, achieved by a systeminvestigating arrangement in a communication network. The systeminvestigating arrangement comprises a behavior investigating device. Thebehavior investigating device comprises a processor acting on computerinstructions whereby the behavior investigating device is operative toprovide a usage pattern investigation function. The usage patterninvestigation function continuously obtains statistical network usagedata of users in the communication network, analyzes the statisticalnetwork usage data with regard to the pattern of behavior of the users,prioritizes the users based on the analysis and informs a trafficprioritizing function about the priority of at least one of the users inorder for the traffic prioritizing function to allow or disallow theuser to use the communication network when it is congested.

This object is, according to a second aspect, also achieved by a methodfor investigating the behavior of users in a communication network. Themethod is performed in a system investigating arrangement in thecommunication network and implements a usage pattern investigatingfunction. The usage pattern investigating function comprisescontinuously obtaining statistical network usage data of users in thecommunication network, analyzing the statistical network usage data withregard to the pattern of behavior of the users, prioritizing the usersbased on the analysis, and informing a traffic prioritizing functionabout the priority of at least one of the users in order for the trafficprioritizing function to allow or disallow the user to use thecommunication network when it is congested.

The object is, according to a third aspect, achieved through a computerprogram product for investigating the behavior of users in acommunication network. The computer program product is provided on adata carrier and comprises computer program code which when run in asystem investigating arrangement in the communication network, causesthe system investigating arrangement to implement a usage patterninvestigation function. The usage pattern investigating function isconfigured to continuously obtain statistical network usage data ofusers in the communication network, analyze the statistical networkusage data with regard to the pattern of behavior of the users,prioritize the users based on the analysis, and inform a trafficprioritizing function about the priority of at least one of the users inorder for the traffic prioritizing function to allow or disallow theuser to use the communication network when it is congested.

In an advantageous variation of the first and second aspects, the usagepattern investigation function, when being configured to inform thetraffic prioritizing function, is configured to send data aboutpriorities at regular recurring intervals. In another variation of thefirst and second aspects, the usage pattern investigation function sendsan initial set, with the priorities of all the users, when sending data,and thereafter sends updates of the set. In a further variation of thefirst and second aspects, the usage pattern investigation function, wheninforming the traffic prioritizing function, receives a request forpriority concerning a user from the traffic prioritizing function andresponds to the request with the priority. In yet another variation ofthe first and second aspects, the usage pattern investigation function,when analyzing the statistical network usage data with regard to thepattern of behavior of a user, fetches statistical network usage datafrom session data records and forms a score as a combination ofdifferent types of data in the session data records, and whenprioritizing the users based on the analysis, forms a priority for theuser based on the score.

There may exist different types of scores with regard to differentaspects of user behavior. According to the first and second aspects, theusage pattern investigation function, when forming a priority based on ascore, furthermore forms the priority as a combination of differentscores.

There may also be several traffic prioritizing nodes performingdifferent activities in the communication network, each comprising atraffic prioritizing function. According to the first and secondaspects, the usage pattern investigation function, when informing atraffic prioritizing function about the priority of at least one of theusers, may furthermore inform each traffic prioritizing node.

It is furthermore possible that the system investigating arrangement andmethod comprises the traffic prioritizing function, which determinesthat there is congestion, obtains the priority of at least one user, anddetermines whether the user is to be allowed to use the communicationnetwork based on priority and the congestion determination.

In one variation of the first aspect, the traffic prioritizing functionis provided in the behavior investigating device. In another variationof the first aspect, the traffic prioritizing function is provided in atraffic prioritizing node.

Another object is to prioritize traffic in a communication network basedon user priority. This object is, according to a fourth aspect, achievedthrough a traffic prioritizing node in a communication network. Thetraffic prioritizing node comprises a processor acting on computerinstructions, whereby the traffic prioritizing node is operative toprovide a traffic prioritizing function. This traffic prioritizingfunction determines that there is network congestion, identifies acommunication session of a user in the communication network, obtains apriority of the user from a behavior investigating device, where thepriority has been determined based on a pattern of behavior of the userobtained through analysis of statistical network usage data, anddetermines whether the user is to be allowed to use the communicationnetwork, based on the priority and the congestion determination.

The object is, according to a fifth aspect, achieved through a method ofprioritizing traffic in a communication network. The method is performedin a traffic prioritizing node and implements a traffic prioritizingfunction. The traffic prioritizing function comprises determining thatthere is network congestion, identifying a communication session of auser in the communication network, obtaining a priority of the user froma behavior investigating device, where the priority has been determinedbased on a pattern of behavior of the user obtained through analysis ofstatistical network usage data, and determining whether the user is tobe allowed to use the communication network, based on the priority andthe congestion determination.

The object is, according to a sixth aspect, achieved through a computerprogram product for prioritizing traffic in a communication network. Thecomputer program product is provided on a data carrier and comprisescomputer program code that, when run in a traffic prioritizing node inthe communication network, causes the traffic prioritizing node toimplement a traffic prioritizing function. The traffic prioritizingfunction determines that there is network congestion, identifies acommunication session of a user in the communication network, obtains apriority of the user from a behavior investigating device, where thepriority has been determined based on a pattern of behavior of the userobtained through analysis of statistical network usage data, anddetermines whether the user is to be allowed to use the communicationnetwork, based on the priority and the congestion determination.

The session may be a new session to be set up. According to onevariation of the fourth and fifth aspects, the traffic prioritizationfunction may then investigate the session through obtaining a request touse the communication network from the user and thereafter investigatethe priority in relation to this request and determine whether thesession may be initiated. Alternatively, the session may be an ongoingsession handled by the node. According to another variation of thefourth and fifth aspects, the traffic prioritization function may theninvestigate the priority in relation to this ongoing session and thendetermine whether the session is allowed to continue.

The invention, according to the above-mentioned aspects, has a number ofadvantages. It allows prioritizing of traffic based on user prioritywhen there is congestion. This gives an enhanced user experience forusers that are important in the communication network.

It should be emphasized that the term “comprises/comprising” when usedin this specification is taken to specify the presence of statedfeatures, integers, steps or components, but does not preclude thepresence or addition of one or more other features, integers, steps,components or groups thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will now be described in more detail in relation to theenclosed drawings, in which:

FIG. 1 schematically shows a user that wants to communicate with anotherentity via a communication network as well as various nodes in thecommunication network,

FIG. 2 shows a block schematic of a first way of realizing a behaviorinvestigating device in the communication network,

FIG. 3 shows a block schematic of a second way of realizing the behaviorinvestigating device in the communication network,

FIG. 4 shows a block schematic of a first way of realizing a trafficprioritizing node in the communication network,

FIG. 5 shows a block schematic of a second way of realizing the trafficprioritizing node in the communication network,

FIG. 6 shows a flow chart of method steps in a method for investigatingthe behavior of users in the communication network according to a firstembodiment,

FIG. 7 shows a flow chart of method steps in a method for prioritizingtraffic in the communication network according to the first embodiment,

FIG. 8 shows a flow chart of method steps for the setting of prioritiesof users,

FIG. 9 schematically shows one way in which some nodes in thecommunication network may receive user priorities for trafficprioritization,

FIG. 10 shows a flow chart of a method of prioritizing traffic for thenodes in FIG. 9,

FIG. 11 shows a computer program product comprising a data carrier withcomputer program code for implementing the functionality of the behaviorinvestigating device, and

FIG. 12 shows a computer program product comprising a data carrier withcomputer program code for implementing the functionality of the trafficprioritizing node.

DETAILED DESCRIPTION

In the following description, for purposes of explanation and notlimitation, specific details are set forth such as particulararchitectures, interfaces, techniques, etc. in order to provide athorough understanding of the invention. However, it will be apparent tothose skilled in the art that the invention may be practiced in otherembodiments that depart from these specific details. In other instances,detailed descriptions of well-known devices, circuits and methods areomitted so as not to obscure the description of the invention withunnecessary detail.

FIG. 1 schematically shows a communication network, which in the presentexample is a telecommunication network. Furthermore, the communicationnetwork 10 is in this case a mobile communication network MN 14comprising a base station BS 12 connected to a serving GPRS Support Node(SGSN) 16, where GPRS is an acronym for General Packet Radio Service.The SGSN 16 is in turn connected to a Gateway GPRS Support Node (GGSN)18 in order to allow communication with entities outside of the network12. The GGSN 18 is shown as being connected to one such external entity28. There is furthermore an Online Charging System (OCS) node 24 and aPolicy Control Rule Function (PCRF) node 26, where both are connected tothe GGSN 19 as well as to each other. There is also a Mobile SwitchingCentre (MSC) node 19 connected to the base station 12 as well as to theOCS node 24. In the mobile communication network 12 there is also abehavior investigating device 22 connected to an associated database 20.The behavior investigating device 22 is connected to the OCS 24, thePCRF 26 and the GGSN 18. It should be realized that the mobilecommunication network 12 may comprise several more devices, for instancemore SGSNs, GGSNs and base stations. The mobile communication network 12may furthermore be a network allowing Internet connectivity such as LongTerm Evolution (LTE) or Wideband Code Multiple Access (WCDMA).

Aspects of the invention will, in the following, be described inrelation to the mobile communication network 12. However, the inventionis not limited to being applied in a mobile communication network, butmay, for instance, be applied in a Public Switched TelecommunicationNetwork (PSTN) or any type of communication network such as a computercommunication network.

The MSC 19 is the centerpiece of a network switching subsystem (NSS).The MSC is mostly associated with communications switching functions,such as call set-up, release, and routing. However, it also performs ahost of other duties, including routing SMS messages, conference calls,fax, and service billing, as well as interfacing with other networks,such as the public switched telephone network (PSTN).

The GGSN 18 is a main component of the mobile communication network. TheGGSN 18 is responsible for the inter-networking between the mobilecommunication network 12 and external packet switched networks. From anexternal network's point of view, the GGSN 18 is a router to a“sub-network”, because the GGSN ‘hides’ the mobile networkinfrastructure from the external network. The GGSN 18 is alsoresponsible for performing authentication and charging functions withthe OCS 24. This may be done via a so-called Gy interface between thetwo nodes that uses diameter (AAA functionality) protocol.

The OCS node 24 handles billing. As opposed to a traditional billingsystem, OCS 24 is oriented to all subscriber types and service types andtherefore offers unified online charging and online control capabilitiesand can be used as a unified charging engine for all network services,making it a core basis for convergent billing in the network 12. Itsarchitecture may support event-based charging (diameter-sms ordiameter-mms), session-based charging function (voice calls or IMSsessions), account and balance management (location of the subscriber'saccount balance within the OCS), and rating function (value of thenetwork resource usage based on charging events)

The PCRF node 26 is a software node designated in real-time to determinepolicy rules in a multimedia network. Unlike earlier policy engines thatwere added onto an existing network to enforce policy, the PCRF 16 is asoftware component that operates at the network core and accessessubscriber databases and other specialized functions, such as a chargingsystem, in a centralized manner. The PCRF 26 is the part of the networkarchitecture that aggregates information to and from the network,operational support systems, and other sources (such as portals) in realtime, supporting the creation of rules and then automatically makingpolicy decisions for each user active on the network 12. Thereby thenetwork 12 might offer multiple services, quality of service (QoS)levels, and charging rules.

The base station 14, which is often termed eNodeB or just NodeB, isfurthermore provided in a part of the mobile communication network 12termed access network or radio access network, while the other devicesare provided in a part of the mobile communication network 12 termed acore network.

A user U1 of the mobile communication network 12 is furthermore equippedwith a terminal 10, often termed a mobile station MS, via which he orshe may communicate with other users and entities via the mobilecommunication network 12. The user U1 may, for instance, want tocommunicate with the external entity 28, for which a communicationsession may be set up via the base station 14, SGSN 16 and GGSN 18. Asession may here be any type of communication such as a sessioninvolving a web browser used to visit a social media site. The user mayalso want to involve in a voice session, in which case, the session mayin some situations instead be set up via the MSC 19.

FIG. 2 shows a block schematic of a first way of realizing the behaviorinvestigating device BID 22. It may be provided in the form of aprocessor PR 30 connected to a program memory M 32. The program memory32 may comprise a number of computer instructions implementing thefunctionality of the behavior investigating device 22 and the processor30 implements this functionality when acting on these instructions. Thefunctionality that is provided may comprise a usage patterninvestigation function. It can thus be seen that the combination ofprocessor 30 and memory 32 provides the behavior investigating device22.

FIG. 3 shows a block schematic of a second way of realizing the usagepattern investigation function of the behavior investigating device 22.The behavior investigating device 22 may comprise a Score Forming UnitSFU 34, a Priority Forming Unit PFU 36 and a Priority Informing Unit PIU38. Together these units provide a usage pattern investigating function.

One or each of the OCS node 24, PCRF node 26 or GGSN node 18 is atraffic handling node. However, each of them may also implement trafficprioritizing. They may therefore also be traffic prioritizing nodes.That means a traffic handling node functioning as a traffic prioritizingnode will, in addition to performing traffic handling, also performtraffic prioritizing.

FIG. 4 shows a block schematic of a first way of realizing the trafficprioritizing functionality of a traffic prioritizing node TPN 40. Thetraffic prioritizing node 40 may be provided in the form of a processorPR 42 connected to a program memory M 44. The program memory 44 maycomprise a number of computer instructions implementing thefunctionality of the traffic prioritizing node 40 and the processor 42implements this functionality when acting on these instructions. It canthus be seen that the combination of processor 42 and memory 44 providesa traffic prioritizing function in the traffic prioritizing node 22.

FIG. 5 shows a block schematic of a second way of realizing the trafficprioritizing functionality of the traffic prioritizing node 40. Thetraffic prioritizing node 40 may comprise a Congestion Determining UnitCDU 46 and a Session Control Unit SCU 48.

The elements in FIGS. 3 and 5 may be provided as software blocks forinstance as software block in a program memory, but also as a part ofdedicated special purpose circuits, such as Application SpecificIntegrated Circuits (ASICs) and Field-Programmable Gate Arrays (FPGAs).It is also possible to combine more than one element in such a circuit.

As mentioned earlier, the user U1 of the mobile communication network12, which user U1 may be a subscriber, may want to communicate in acommunication session via the communication network 12. This may alsohappen when one or more of the traffic handling nodes OCS 24, GGSN 18and PCRF 26 are experiencing congestion. Now, the user U1 may be a userthat for some reason is important to the operator of the network 12. Heor she may be economically important to the operator. It may be a userthat has a high usage rate or a high billing rate. The user may also bea loyal or influential user, such as a user that has been a subscriberfor a long time or has a high number of followers on social media. Theuser may also be important because he or she is involved in importantwork in society, such as being a doctor, an ambulance driver or afireman.

If any of OCS 24, GGSN 18 or PCRF 26 do experience that there iscongestion, for instance through their CPU usage levels being high, theymay decline communication requests made by users. Traditionally, thisdeclining has been made without considering the importance of the user.

Aspects of the invention address this situation. One way in which thisis addressed is through the use of a behavior investigating device thatcommunicates with a traffic prioritizing node. The behaviorinvestigating device is furthermore a part of a system investigatingarrangement. In some instance the system investigating arrangement onlycomprises the behavior investigating device. In other instances thesystem investigating arrangement also comprises the traffic prioritizingnode. In yet other instances there are several traffic prioritizingnodes performing different activities in the communication network, eachcomprising a traffic prioritizing function.

Furthermore, the usage pattern investigating function provided by thebehavior investigation device communicates with the traffic prioritizingfunction implemented through the congestion determining unit and sessioncontrol unit. These two functions may be placed in different nodes andthus also in different devices. However, in other instances the twofunctions are provided in the same device, in the behavior investigatingdevice.

Now a first embodiment will be described with reference being made alsoto FIGS. 6 and 7, where FIG. 6 shows a flow chart of method steps in amethod for investigating the behavior of users in the communicationnetwork and being performed in the behavior investigating device 22,while FIG. 7 shows a flow chart of method steps in a method forprioritizing traffic being perform in a traffic prioritizing node.Furthermore, as was mentioned earlier, the units of the behaviorinvestigating device 22 together provide a usage pattern investigationfunction, which function is used to determine priorities for the usersand provide these priorities to the traffic prioritizing functionprovided by the congestion determining unit and session control unit.

The behavior investigating device 22 may be integrated with a servicedata point (SDP) and communicate with other nodes to gather real-timeinformation about every user.

In order to perform prioritizing, the behavior investigating device 22continuously obtains statistical network usage data of users in thecommunication network, step 50, i.e., it obtains statistical data aboutnetwork usage in the communication network 12 with regard to thedifferent users. The gathered data may range from mobility to individualprofiles (sensitive personal information) that give valuable knowledgeto the operator (such as the current trend of the market). Thestatistical network usage data may comprise Session Data Records (SDRs),which are sometimes also referred to as call data records (CDRs).

Different traffic handling nodes in the network may record every eventthat is happing in the network per user. These recording are thenreported as the above-mentioned SDRs. The SDRs are typically sent toMediation systems so that they can be processed and sent to othersystems like Analytics or Revenue Assurance Systems for furtherprocessing. In aspects of the invention SDRs are also constantlyreceived and processed by the behavior investigating device 22.

The network data, for instance in SDRs, may comprise session specificdata such as data about actual communication sessions set up between auser and other entities, such as other users, social media sites etc. Inrelation to the first user U1, the communication network 20 may forinstance collect data of the calls made by him or her, the messages sentby him or her as well as other types of activities, such as filetransfers to different servers and social media sites visited.

Such SDRs may be collected by all the different core network nodes. TheMSC 19, the OCS 24, the PCRF 26 and GGSN 18 may for instance all providesuch records on sessions performed by all users in the communicationnetwork 12. The records may also be provided to the behaviorinvestigating device 22, which in turn stores them in the database 20.Alternatively the different nodes that collect SDRs may themselvesdirectly store them in the database 20.

The score forming unit 34 may also obtain other types of statisticalnetwork usage data than SDRs. It may for instance obtain subscriptiondata about the subscription of the user from a subscription database.The data obtained this way may comprise service rates and the age ofsubscription. The score forming unit 34 may thus continuously accesssuch SDRs with respect of each user in the network in order to be ableto prioritize them.

The score forming unit 34 may furthermore analyze the statisticalnetwork usage data, including the data of the SDRs, in order to identifybehavior patterns of the users, step 51. It thus analyzes thestatistical network usage data with regard to the pattern of behavior ofthe users. The data may be operated upon by several algorithms (likeinfluential user detection algorithm) to disclose the characteristics ofvarious individuals (like average money the user spends per month)existing in the network in the form of a score. The pattern identifiedcan be that patterns of use of the different services, such as if a useris making many phone calls, sending many messages, and/or connecting alot to social media sites, and spending SDRs may also be analyzed inorder to find out which friends the user U1 contacts as well as howfrequent and how long such sessions with friends are.

The score forming unit 34 may more particularly form a score for anaspect of user behavior. There may be one score for how loyal a user is,another score for how much the user spends in the system, a furtherscore indicating how influential the user is and another how importantthe role of the user is, like if he or she is a firefighter or ambulancedriver. It is to be noted that the score forming unit 34 mayasynchronously calculate and hold the score of every user located at theparticular SDP with which the behavior investigating device 22 isintegrated, and update the score in regular intervals of time.

Based on the analysis, and more particularly based on the analyzed data,such as on the scores, the priority forming unit 36 then prioritizes theusers, step 52. The prioritizing may involve forming a priority throughcombining different scores. A priority may also be based on only one oronly a few scores. In this way each user is assigned a value or prioritythat represents the importance in the communication network.

Once all the users have been prioritized, the priority informing unit 38informs one or more of the traffic prioritizing functions about thepriority, step 53. It may more particularly inform one or more trafficprioritizing nodes about the priority of at least one of the users inorder for the traffic prioritizing function to allow or disallow theuser to use the communication network when it is congested. It willtypically inform of priorities in order for the traffic prioritizingnodes to allow or disallow users to use the communication network 12 inthe case of congestion.

There are several ways in which this informing may be performed. Thebehavior investigating device 22 may inform all nodes that have thecapability of performing prioritization. It may also inform one or a fewof the nodes, for instance a node involved in handling communicationsessions. It may for instance only inform to the OCS node 24.

The informing may be made through send data about priorities at regularrecurring intervals. In this case it is also possible to first send aninitial set with the priorities of all the users and thereafter sendupdates of the set. This may be done in batches, where trafficprioritizing nodes are informed about all priorities in a batch so thatthey can directly determine how to handle a user involved or to beinvolved in a communication session, which priorities are then updatedwith later batches. As an alternative it is possible that priorities aredelivered one-by-one on request to traffic prioritizing functions. Inthis case the usage pattern investigation function receives a requestfor priority concerning a user from a traffic prioritizing node andresponds to the request with the priority.

As an example, a traffic prioritizing function may handle a receivedpriority in the following way:

One pre-requisite for the prioritizing is that there is congestion. Thecongestion determining unit 46 of a traffic prioritizing node 40 maytherefore determine that there is congestion, step 54. Thisdetermination may be made through investigating the load on the nodeitself, such as through investigating the Central Processing Unit (CPU)usage. If the CPU usage exceeds a congestion threshold, the congestiondetermining unit 46 may determine that the node experiences congestion.

If there is congestion, then it is not possible to handle all requestsfor or ongoing communication sessions. Therefore, the congestiondetermining unit 46 informs the session control unit 48, which thenperforms session control of communication sessions. The sessions beingcandidates for being disallowed may be new sessions being set up.However, there may also be ongoing sessions, which are then prematurelyterminated. The session control unit 48 therefore identifies acommunication session of a user in the communication network, step 55,which session may thus be a session that is to be set up or is alreadyongoing. In case the session is a new session the identification may bemade through obtaining a request from the user to use the communicationnetwork. An existing session handled by the node may be identified via auser identifier, such as a Mobile Station International SubscriberDirectory Number (MSISDN). The session control unit 48 then obtains thepriorities of the user from the behavior investigating device, step 56,where the priority thus was determined based on a pattern of behavior ofthe user obtained through analysis of statistical network usage data. Incase the session was a new session the priority is the priorityassociated with the request to use the communication network and if thesession is an ongoing session the priority is the priority obtained inrelation to this ongoing session. The priority may be obtained throughsending a request to the behavior investigating device 22 or throughlooking at a previously received and locally stored priority of theuser. The session control unit 48 then determines whether the user isallowed to use the communication network based on the priority and thepreviously mentioned congestion determination, step 57.

It can in this way be seen that when there is congestion, a user isprioritized based on how important he or she is. This gives an enhanceduser experience for users that are important in the communicationnetwork. This improved user-experience may greatly enhance thesatisfaction of the high-value user.

Now there will follow a more detailed description on how the prioritiesmay be formed. This will be made with reference being made to FIG. 8,which shows a flow chart of a number of method steps for forming apriority.

The score forming unit 34 computes different users' scores based oncertain dimensions from the collected network usage data such asinformation via events like SDRs produced by different network elementsserving the user, such as the OCS 24, the GGSN 18 or the PCRF 26.

The score forming unit 34 may then fetch or extract statistical networkusage data from these records. It may, for instance, extract data aboutspending on operator services, information about social community sitesvisited, and/or the identity of the user at such a social communitysites, as well as information about other users or phones numbercontacted. It may also obtain information on how long a user has beenassociated with the network. This information is not necessarilyincluded in a SDR but may be found out through investigating a HomeLocation register (HLR) or the subscription of a user.

As an example, the following parameters may be obtained via the SDRs

-   -   Usage of service (U)    -   Spending on a particular service (S)    -   Frequency of contacting contacts/friends (F)    -   Duration of call on an average to frequent contacts (D)    -   Location of frequent contacts (L)    -   Which time of the day calls are made (T)

The collected and extracted data may then be analyzed in order to beable to form a score, step 61. The analysis of social community sitesmay involve investigating a site to see how many followers the user hasthere. It may also involve investigating the number of persons called.Both of these things may be used for analyzing the social networkbehavior of the user. The analysis may also involve investigating theusage pattern of the services of the network, like frequency and mixtureof services.

Yet another analysis may involve finding out whether the numbers calledby a user are associated with a hospital, fire station or other similarlocations. Another investigation may be an investigation of the socialmedia sites to determine whether many of the friends there are medicalstaff or fire fighter staff.

After having analyzed the data, the score forming unit 34 may formdifferent scores, step 62. There may here be different types of scoreswith regard to different aspects of user behavior. The score formingunit 34 may for instance form the scores below:

-   -   Loyalty Score/Segment: Users can be segmented as in High-Loyal        or Low-loyal based on the association (duration) that a user has        with operator    -   Influential Score/Segment: Users can be segmented as in        High-Influencer or Low-Influencer based on his/her social        network behavior    -   Average Revenue per User (ARPU) Score/Segment: Users can be        segmented as in High-ARPU and Low-ARPU based on the average        spend of the users on operator services    -   Churn Score/Segment: Users can also be segmented into        High-Churners and Low-Churners based on their exhibited usage        pattern of services    -   Role Score/Segment: Users can also be segmented based on        services they render or services accessed based on user-profile        or community that he/she belongs to. As an example emergency        services offered users like firemen, ambulance crew etc. can be        grouped under one segment. Similarly users frequently accessing        web sites offering health care services, hospitals, etc., can be        grouped under one segment. These segments can be assigned a high        score.

A score may more particularly be formed through combining one or more ofthe previously mentioned parameters, i.e. different types of data in thesession data records. Below an example is given of how a score IS may bedetermined for an influential user.

The influential user score IS of a user a_(i) may for instance bedetermined as

IS(a _(i))=a*Ua _(i) +β*Sa _(i) +γ*Fa _(i) +δ*Da _(i) for any location(L _(i)) and time (T _(i))

where α, β, γ and δ are weights allotted based on the needs ofoperators. In this case the higher the IS score is, the greater theinfluence of the user.

The other scores may be formed in a similar manner. Some scores may beformed based on only one parameter. The loyalty score may for instanceonly be formed based on the length of subscription.

The priority forming unit 36 then forms a priority for each user basedon one or more scores, step 63. A priority may be formed based on asingle score or a combination of different scores. A priority P may, forinstance, be calculated as:

P(a _(i))=F(LS(a _(i)),IS(a _(i)),AS(a _(i)),CS(a _(i)),RS(a _(i))))

where

-   -   LS is loyalty score    -   AS is ARPU score    -   CS is churn score    -   RS is role score

The above-given priority determination is merely an example. However itis up to the operator to decide which parameters/dimensions can giveaccurate scores and which score are to be included in determining thepriority.

As mentioned above, the priority may be provided to a trafficprioritizing node. As an example it may be provided to the OCS 24.

In the proposed architecture, priorities input from the behaviorinvestigation device 22 to OCS 24 could be any of the above shownscores/segments or a combination of them. OCS 24 can now takeappropriate actions/measures during congestion based on what score auser has and the segment to which he or she belongs.

Say, for example, during congestion, OCS 24 may choose to drop someongoing sessions of low-ARPU users to accommodate few high-ARPU usersessions during this time, in order to maintain the resourceutilization. If the resource utilization goes higher where no more newsessions can be allowed, OCS 24 may choose to drop all low-influencersessions to bring down the resource utilization to normal/acceptablelevels so that no interruption shall happen for the ongoing high-valueuser sessions.

To illustrate the benefits of prioritization, the following comparisonis made of the handling of congestion in an OCS without and withprioritizing, where in the prioritizing a priority is based on a singlescore. When there is no prioritization, load regulation in the OCS is asshown below. If the CPU/Memory utilization crosses 60% during a samplinginterval, then 70% of the incoming new session requests are rejected(means only allow 30% of new sessions along with existing sessions)

TABLE 1 System resource usage % of rejections per type of (per levels ofcongestion) traffic in a given period >60% 70% of new sessions >70% 100%of new sessions >80% 50% of ongoing sessions

With the above configuration in place, upon reaching congestion levelwhere 70% of the traffic is to be rejected, OCS 24 serves the firstthree out of ten (window-size) requests received and rejects theremaining seven on a First Come First Serve (FCFS) basis. Assuming thatthere are four highly valued end-users in a single window, theimplementation of OCS without prioritizing never assures that those fourare preferred over other users in the network during times ofcongestion.

TABLE 2 1 2 3 4 5 6 7 8 9 10 M L H H M H M L H L S S S R R R R R R RL—Low, M—Medium, H—Highly valued end-users S—Served, R—Rejected

It can be seen that only one out of the four highly valued end-users isserved in the above mentioned scenario. Even if the rejection rate is50%, it is not very certain that all the four high-priority users newsession establishment requests are accepted by OCS 24 all the time.

Similarly, if CPU/Memory utilization crosses 80% during the samplinginterval, then 50% of the ongoing sessions must be cleaned up. In thissituation, there is no real logic defining which sessions to cleanupin-order to bring down resource utilization. When instead applyingprioritizing of the users, the following load regulation scheme could beused:

TABLE 3 System resource usage (per levels of congestion) High value userrejection criteria >60% Reject 70% of new user sessions whose score is<0.65 >70% Reject 100% of new user sessions whose score is <0.75 >80%Reject 100% of new user sessions whose score is <0.9 && Cleanup 50% ofthe existing sessions whose score is <0.75

With the modification to the load regulation algorithm as shown above,the same OCS 24 behaved in a quite intelligent manner as below. Sincethe user-value score (calculated by the behavior investigating device)is supplied to the OCS, it has been empowered with the capability todifferentiate between requests based on the value of users in thenetwork

TABLE 4 1 2 3 4 5 6 7 8 9 10 M L H H M H M L H L 0.59 0.27 0.68 0.710.55 0.66 0.61 0.32 0.80 0.44 R R S S R S R R S R L—Low, M—Medium,H—Highly valued end-users S—Served, R—Rejected

It is very evident that the OCS 24 reacted relatively better given thesame condition where resource usage is >60% and the trigger is to reject70% of new user session requests whose influencer score is <0.65. Innormal case, OCS must reject 7 out of 3 incoming requests at thistrigger, as it did in the example without prioritization. However, OCSaccepted 4 incoming requests during the period and rejected only 6requests when prioritizing was performed. This is due to the fact thatduring that period there happens to be 4 high value users requesting newsession establishment. Hence, OCS did secure the user experience ofthese high-value users with the new scheme in place.

In a subsequent period, it might happen that all new sessionestablishments are from low-value users. In such case, OCS may choose toreject all of them to secure resource utilization.

In the above given examples, a straightforward case of regulating loadbased on one score was shown. However, as was disclosed above, thescheme can be enhanced further by taking different other dimensions ofthe user to have more complex rules as well (ex; combining alluser-values scores).

Furthermore, as was mentioned earlier it is possible to provide allpriorities to a traffic prioritizing node at once and then regularlyupdate the priorities or one-by-one on request: The first way is alsotermed a batch processing scheme, while the second is a real-timefetching scheme. In the batch processing scheme priorities are providedto traffic prioritizing nodes at periodic intervals

-   -   In this scheme, the behavior investigating device 22 takes a        snapshot of all (first time) user identities (MSISDN) together        with their priorities and dumps them into a local file in a        predefined format.    -   This file may be uploaded to the traffic prioritizing node 42        via file transfer protocol (FTP) into a preconfigured path.    -   The traffic prioritizing node 42 upon noticing a file in the        path, may load the file into its database.    -   When a traffic request is received during congestion state, the        traffic prioritizing node will look up the database for        priority, optionally keeps it in memory for further use (to        avoid database lookup) and takes an appropriate decision.    -   the behaviour investigating device computes the new priorities        in the next batch run, compares the list with the originally        produced list to understand the changed priorities, and produces        a file with only changed priorities along with user identities        and uploads it to the traffic prioritizing node.    -   Now the traffic prioritizing node needs to only update its        database (and if needed its cache) for only changed users.    -   The advantage of this approach is that the traffic prioritizing        node will only add a minimal latency to the request processing        due to fetching data from database/in-memory cache.

The real-time fetching scheme may be performed in the following way:

-   -   Upon receiving a service request with regard to a user first        time, the traffic prioritizing node 42, such as the OCS, goes        and fetches the latest priority of that user over a published        interface (e.g. based on REpresentational State Transfer (REST))        of the behavior investigating device 22.    -   The fetched value is stored in a traffic prioritizing node cache        to avoid further requests to the traffic prioritizing node for        the same user.    -   The information in the cache must be stored till the user        session is alive and if not alive this value must be purged out        from memory within a pre-configured time.    -   An advantage of this approach is that the traffic prioritizing        node does not have to maintain a big database.

As was mentioned earlier, it is also possible for the behaviorinvestigating device 22 to simultaneously provide user priorities to allnodes handling traffic, such as to GGSN 18, PCRF 26 and OCS 24. In thisway OCS 24, GGSN 18 and PCRF 26 (involved in the chain of rendering aservice to end user with right QoS and charge for the same) are hookedonto the behavior investigating device 22 in order to receive the userpriorities for effective load regulation.

Advantages of this approach are that every network element looks at thetraffic in the same dimension of the priority and makes the rightprioritization at times and making right decisions. For example whenGGSN 18 is overloaded, it will also choose to reject the traffic relatedto low-value-users (e.g. score <0.65) while still serving high-valueusers.

A centralized approach where one traffic handling node is in charge willnow be described, with reference being made to FIG. 9, whichschematically shows the behavior investigating device communicating withthe GGSN 18, which in turn communicates with the OCS 24 and PCRF 26 andwhere the OCS 24 and PCRF 26 also communicate with each other.

In the centralized approach, the behavior investigating device 22 may behooked onto the network element that is the source of the traffic. Inthis case, the behavior investigating device 22 is hooked onto GGSN 18,as it is the one receiving traffic from radio access network and isresponsible for initiating charging and policy sessions with PCRF 26 andOCS 24.

The way this approach operates will now also be described with referencebeing made to FIG. 10, which shows a flow chart comprising a number ofmethod steps.

After the method is started, step 66, the GGSN 18, upon receiving aservice request from the radio access network in relation to a user,such as the first user U1, step 68, obtains the corresponding priority,step 70. It then enriches the request (irrespective of whether it is inan overload state or not) with the priority. The GGSN 18 theninvestigates whether it experiences congestion. If it does, step 72,then the GGSN 18 investigates the priority. In case the priority is low,step 74, then the user session is rejected, step 102, and the method isended, step 104. However, if the priority is high, step 74, as well asif there was no congestion, step 72, a Gx request, i.e., a request overthe Gx interface between the GGSN 18 and PCRF 26, is sent to the PCRF26, step 76. The priority may in this case be provided together with auser identifier, such as the MSISDN, in an Attribute Value Pair (AVP).

This AVP may then be included in the Gx request towards the PCRF 26while establishing a policy-session. The PCRF 26 in turn investigates ifit experiences congestion. If it does, step 78, i.e. if it is inoverload situation, it considers this AVP value along with the own loadregulation algorithm configurations to take an appropriate decision. IfPCRF 26 decides to accept the request, which happens if the priority ishigh, step 80, the AVP is transparently sent over to OCS 24 in a Syrequest step 82, i.e. in a request concerning a policy session sent fromthe PCRF 26 to the OCS 24 via the Sy interface. The same thing willhappen if the PCRF 26 did not experience congestion, step 78. However,if the priority was found to be too low, step 80, then the PCRF 26rejects the request, step 90, and the method is ended, step 104.

A similar approach shall be taken by the OCS 24 based on the AVP value.In case the OCS after having received the Sy request finds that itexperiences congestion, step 84, it continues and investigates thepriority. If it also finds that the priority is too low, step 88, therequest is rejected, step 90, and the method is ended, step 104.However, in case there was no congestion, step 84, or the priority washigh, step 88, the policy request is served by the OCS 24, step 86. Ifthe policy session is not successfully established, step 92, then themethod is ended, step 104. However if the policy session is successfullyestablished, step 92, then GGSN 18 will initiate a charging sessiontowards the OCS 24. When the policy session is established, the OCS 24shall also send the AVP value to the GGSN 18 in the response path sothat the responses are not dropped by the network elements due tooverload. During this process, both PCRF 26 and OCS 24 may need to cachethe AVP information along with other session data for further use tilluser-session is active.

When there is a successfully established policy session, the GGSN 18will send a Gy request to the OCS 24, i.e., a request over the Gyinterface for a charging session, step 94, where again an AVP isincluded in the request. The priority may here have been updated sincethe request for a policy session was made. Therefore, the OCS 24 willupdate the cached AVP with the new value if different and then proceedwith the request handling. The OCS 24 will then investigate whether itis experiencing congestion. If it is, step 96, then the OCS 24investigates the priority. If the priority is too low, step 100, thenthe request is rejected, step 102, and the method ended, step 104.However, in case the priority was high, step 100, or there was nocongestion, step 98, then the OCS 24 serves the charging request, step98.

The cached AVP value is useful when OCS 24 needs to send are-authorization (RAR) request to PCRF 26 or GGSN 18 (depending on if are-authorization is for policy session or charging session). OCS 24 canprioritize the traffic accordingly and shall include the cached AVP todownstream systems.

By having the above-described information exchange, the need for havinglocal information of priorities at every network element is removed.Also, this is efficient in that caching of the information will onlyhappen for those users whose sessions are active.

The use of priorities can also be applied for traditional core networkservices such as traditional Voice and messaging Services using the MSC19. In a centralized approach, MSC 19 gets the priority from thebehavior investigating device 22. When MSC 19 is in congestion state,the priority can be used to determine if a user is to be allowed ordisallowed the use of a service. MSC 19 may also add the priority inmessages to the downstream systems as ‘Extension Parameters’ so thatsystems like OCS 24 can also make the right decision if in congestion.

The computer program code of a system investigating device may be in theform of computer program product for instance in the form of a datacarrier, such as a CD ROM disc or a memory stick. In this case the datacarrier carries a computer program with the computer program code, whichwill implement the functionality of the above-described behaviorinvestigating device. One such data carrier 106 with computer programcode 108 is schematically shown in FIG. 11.

Also, the computer program code of a traffic prioritizing node may be inthe form of computer program product for instance in the form of a datacarrier, such as a CD ROM disc or a memory stick. In this case the datacarrier carries a computer program with the computer program code, whichwill implement the functionality of the above-described trafficprioritizing node. One such data carrier no with computer program code112 is schematically shown in FIG. 12.

The score forming unit may be considered to form means for continuouslyobtaining statistical network usage data of users in the communicationnetwork and means for analyzing the statistical network usage data withregard to the pattern of behavior of the users. The priority formingunit may in turn be considered to form means for prioritizing the usersbased on the analysis and the priority informing unit may be consideredto form means for informing a traffic prioritizing function about thepriority of at least one of the users in order for the trafficprioritizing function to allow or disallow the user to use thecommunication network when it is congested.

The means for informing a traffic prioritizing function about thepriority of at least one of the users of the priority informing unit mayfurthermore be considered to form means for sending data aboutpriorities at regular recurring intervals. The means for sending datamay furthermore comprise means for sending an initial set with thepriorities of all the users and thereafter sending updates of the set.

The means for informing a traffic prioritizing function about thepriority of at least one of the users of the priority informing unit mayfurthermore be considered to form means for receive a request forpriority concerning a user from the traffic prioritizing function andresponding to the request with the priority.

The means for analyzing the statistical network usage data with regardto the pattern of behavior of a user of the score forming unit may beconsidered to comprise means for fetching statistical network usage datafrom session data records and means for forming a score as a combinationof different types of data in the session data records. The means forprioritizing the users based on the analysis may be considered tocomprise means for forming a priority for the user based on the score.

The means for forming a priority based on a score may furthermore beconsidered to form means for forming the priority as a combination ofdifferent scores.

The means for informing a traffic prioritizing function about thepriority of at least one of the users may further be considered to formmeans for informing each traffic prioritizing node.

The congestion determining unit may be considered to form means fordetermining that there is network congestion and the session controlunit may be considered to form means for identifying a communicationsession of a user in the communication network, means for obtain apriority of the user from a behavior investigating device and means fordetermining whether the user is to be allowed to use the communicationnetwork based on the priority and the congestion determination.

The means for identifying a communication session may be consider tocomprise means for obtaining a request to use the communication networkfrom the user and means for investigating the priority in relation tothis request.

The means for identifying a communication session may also be consideredto form means for investigating a priority in relation to an ongoingsession.

While the invention has been described in connection with what ispresently considered to be most practical and preferred embodiments, itis to be understood that the invention is not to be limited to thedisclosed embodiments, but on the contrary, is intended to cover variousmodifications and equivalent arrangements. Therefore the invention isonly to be limited by the following claims.

What is claimed is:
 1. A system investigating arrangement in acommunication network, the system investigating arrangement comprising abehavior investigating device comprising a processor acting on computerinstructions whereby said behavior investigating device is operative toprovide a usage pattern investigation function configured to:continuously obtain statistical network usage data of users in thecommunication network, analyze the statistical network usage data withregard to the pattern of behavior of the users, prioritize the usersbased on the analysis, and inform a traffic prioritizing function aboutthe priority of at least one of the users in order for the trafficprioritizing function to allow or disallow the user to use thecommunication network when it is congested.
 2. The system investigatingarrangement according to claim 1, wherein the usage patterninvestigation function is configured to send data about priorities atregular recurring intervals when informing the traffic prioritizingfunction.
 3. The system investigating arrangement according to claim 2,wherein the usage pattern investigation function is configured to sendsaid data about priorities by sending an initial set with the prioritiesof all the users and thereafter sending updates of the set.
 4. Thesystem investigating arrangement according to claim 1, wherein the usagepattern investigation function is configured to receive a request forpriority concerning a user from the traffic prioritizing function and toinform the traffic prioritizing function by responding to the requestwith the priority.
 5. The system investigating arrangement according toclaim 1, wherein the usage pattern investigation function is configuredto analyze the statistical network usage data with regard to the patternof behavior of a user by fetching statistical network usage data fromsession data records and forming a score as a combination of differenttypes of data in the session data records, and is further configured toprioritize the users based on the analysis by forming a priority for theuser based on said score.
 6. The system investigating arrangementaccording to claim 5, wherein there are different types of scores withregard to different aspects of user behavior and wherein the usagepattern investigation function is configured to form a priority based ona score by forming the priority as a combination of different scores. 7.The system investigating arrangement according to claim 1, wherein thereare several traffic prioritizing nodes performing different activitiesin the communication network, each comprising a traffic prioritizingfunction, and wherein the usage pattern investigation function isfurther configured to inform each traffic prioritizing node, wheninforming the traffic prioritizing function about the priority of atleast one of the users.
 8. The system investigating arrangementaccording to claim 1, further comprising the traffic prioritizingfunction, which traffic prioritizing function is configured to determinethat there is congestion, obtain the priority of at least one user anddetermine whether the user is to be allowed to use the communicationnetwork based on priority and the congestion determination.
 9. Thesystem investigating arrangement according to claim 8, wherein thetraffic prioritizing function is provided in the behavior investigatingdevice.
 10. The system investigating arrangement according to claim 1,wherein the traffic prioritizing function is provided in a trafficprioritizing node.
 11. A method for investigating the behavior of usersin a communication network, the method being performed in a systeminvestigating arrangement in the communication network and implementinga usage pattern investigating function, the method comprising:continuously obtaining statistical network usage data of users in thecommunication network; analyzing the statistical network usage data withregard to the pattern of behavior of the users; prioritizing the usersbased on the analysis; and informing a traffic prioritizing functionabout the priority of at least one of the users, in order for thetraffic prioritizing function to allow or disallow the user to use thecommunication network when it is congested.
 12. The method according toclaim 11, wherein the informing of priority comprises sending data aboutpriorities at regular recurring intervals.
 13. The method according toclaim 12, wherein the sending comprises sending an initial set with saidthe priorities of all the users and thereafter sending updates of theset.
 14. The method according to claim 11, wherein the informing ofpriority comprises receiving a request for priority concerning a userfrom the traffic prioritizing function and responding to the requestwith the priority.
 15. The method according to claim 11, wherein theanalyzing of the statistical network usage data with regard to thepattern of behavior of a user comprises fetching statistical networkusage data from session data records and forming a score as acombination of different types of data in the session data records, andthe prioritizing of the users based on the analysis comprises forming apriority for the user based on said score.
 16. The method according toclaim 15, wherein there are different types of scores with regard todifferent aspects of user behavior and the forming of a priority basedon a score further comprises forming the priority as a combination ofdifferent scores.
 17. The method according to claim 11, wherein thereare several traffic prioritizing nodes performing different activitiesin the communication network, each traffic prioritizing node comprisinga traffic prioritizing function, where the informing of a trafficprioritizing function comprises informing each traffic prioritizingnode.
 18. The method according to claim 11, further comprisingimplementing the traffic prioritizing function by determining that thereis congestion, obtaining the priority of at least one user anddetermining whether the user is to be allowed to use the communicationnetwork based on the priority and the congestion determination.
 19. Anon-transitory computer-readable medium comprising, stored thereupon, acomputer program product for investigating the behavior of users in acommunication network, the computer program product comprising computerprogram code that, when run in a system investigating arrangement in thecommunication network, causes the system investigating arrangement toimplement a usage pattern investigation function configured to:continuously obtain statistical network usage data of users in thecommunication network; analyze the statistical network usage data withregard to the pattern of behavior of the users; prioritize the usersbased on the analysis; and inform a traffic prioritizing function aboutthe priority of at least one of the users, in order for the trafficprioritizing function to allow or disallow the user to use thecommunication network when it is congested.
 20. A traffic prioritizingnode in a communication network, the traffic prioritizing nodecomprising a processor acting on computer instructions whereby saidtraffic prioritizing node is operative to provide a traffic prioritizingfunction configured to: determine that there is network congestion;identify a communication session of a user in the communication network;obtain a priority of the user from a behavior investigating device, saidpriority having been determined based on a pattern of behavior of theuser obtained through analysis of statistical network usage data; anddetermine whether the user is to be allowed to use the communicationnetwork based on the priority and the congestion determination.
 21. Thetraffic prioritizing node according to claim 20, wherein the session isa new session to be set up and the traffic prioritization function isconfigured to detect the session through obtaining a request to use thecommunication network from the user, investigate the priority inrelation to this request and determine whether the session may beinitiated.
 22. The traffic prioritizing node according to claim 20,wherein the session is an ongoing session handled by the node and thetraffic prioritization function is configured to investigate thepriority in relation to this ongoing session and determine whether thesession is allowed to continue.
 23. A method of prioritizing traffic ina communication network, the method being performed in a trafficprioritizing node and implementing a traffic prioritizing function, themethod comprising: determining that there is network congestion;identifying a communication session of a user in the communicationnetwork; obtaining a priority of the user from a behavior investigatingdevice, said priority having been determined based on a pattern ofbehavior of the user obtained through analysis of statistical networkusage data; and determining whether the user is to be allowed to use thecommunication network based on the priority and the congestiondetermination.
 24. The method according to claim 23, wherein the sessionis a new session to be set up and the identifying of the communicationsession comprises obtaining a request to use the communication networkfrom the user and investigating the priority in relation to this requestand the determining comprises determining whether the session may beinitiated.
 25. The method according to claim 23, wherein the session isan ongoing session handled by the node and the investigation comprisesinvestigating the priority in relation to this ongoing session and thedetermining comprises determine whether the session is allowed tocontinue.
 26. A non-transitory computer-readable medium comprising,stored thereupon, a computer program product for prioritizing traffic ina communication network, the computer program product comprisingcomputer program code that, when run in a traffic prioritizing node inthe communication network, causes the traffic prioritizing node toimplement a traffic prioritizing function configured to: determine thatthere is network congestion; identify a communication session of a userin the communication network; obtain a priority of the user from abehavior investigating device, said priority having been determinedbased on a pattern of behavior of the user obtained through analysis ofstatistical network usage data; and determine whether the user is to beallowed to use the communication network based on the priority and thecongestion determination.